/*
 * 猜猜看
 *
 */
use rand::Rng;
use std::cmp::Ordering;
use std::io;

pub fn game() {
    let guess = rand::thread_rng().gen_range(1, 101); //生成随机数1~100，含左不含右
    loop {
        let mut input = String::new(); //听说没有gc的语言字符串是个大坑
        println!("请输入你猜的数字。");
        io::stdin().read_line(&mut input).expect("读取错误"); //读取输入
        let input: u32 = match input.trim().parse() {
            //转换为数字
            Ok(num) => num,
            Err(_) => {
                println!("请输入数字！");
                continue;
            }
        };
        println!("输入数字：{}", input);
        match input.cmp(&guess) {
            //模式匹配，目前还没看出和switch比有什么优点
            Ordering::Equal => {
                println!("猜对了！");
                break;
            }
            Ordering::Greater => println!("高了"),
            Ordering::Less => println!("低了"),
        }
    }
}
